package fmglemmings;

import java.util.logging.Logger;

/**
 * Normal lemminget reprezentalo osztaly
 */
public class Lemming extends MapObject {
	
	protected static Logger logger = Logger.getLogger("fmglemmings");
    /**
     * esesszamlalo
     */
	private int fallcounter;
/*	protected void turn(){
		switch(dir){
			case 6: dir=4;
				break;
			case 4: dir=6;
				break;
			default:break;
		}
	}*/
    /**
     * Robbanas eseten ha elpusztithato, akkor meghal
     */
	public void bombEvent() {
//		logger.info("Objektum felrobbant X:"+X+"Y:"+Y);
		gf.dieRequest(this,true);
	}
    /**
     * Blokkolo objektummal valo utkozeskor visszafordul
     * @param mo Objektum, amivel utkozik
     */
	public void hitEvent(MapObject mo){
                logger.info("Utkozes");
		if (mo.isGoal()) gf.winRequest(this);
		if(mo.isBlock()){
                    gf.turnRequest(this);
                }
		
	}
    /**
     * eseskor noveli a fallcounter-t
     */
        public void fallEvent() {
		fallcounter++;
		logger.info("zuhant magassag: " + fallcounter);
        }
	/**
	 * Az overrideolt lezuhant esemeny
	 */
        public void fallenEvent() {
                logger.info("Lemming foldet ert");
		if (fallcounter > 3) gf.dieRequest(this);
		fallcounter=0;
        }
	/**
     * A normal lemming konstruktora
     * @param a X koordinata
     * @param b Y koordinata
     * @param c irany
     */
	public Lemming(int a, int b, int c){
                super (a,b,c);
		move = true;
		logger.info("Konstruktor kesz X:"+X+" Y: "+Y);
	}
}
 
